草庐IT

python - 错误处理方法

全部标签

ruby - ruby 会自动调用初始化方法吗?

如果类定义中包含初始化方法,是否需要显式初始化对象? 最佳答案 不,Ruby不会自动调用initialize。Class#new的默认实现看起来有点像这样:classClassdefnew(*args,&block)obj=allocateobj.initialize(*args,&block)objendend[实际上,initialize默认是private,所以你需要使用obj.send(:initialize,*args,&block)。]因此,Class#new的默认实现确实调用了initialize,但完全有可能(尽管非

ruby-on-rails - Controller : Circular dependency detected while autoloading constant 中的 Rails 4 运行时错误

如果我遗漏了什么,请告诉我。我不明白为什么无法访问我的views/references/文件夹。new.html.erb和index.html.erb都不可用。当我转到localhost:3000/references时,我的错误是:RuntimeErrorinReferencesController#indexCirculardependencydetectedwhileautoloadingconstantReferencesController我相信这是设置,它不应该是Rails问题,因为我的其他Controller工作正常。我的路线文件中有resources:reference

ruby - 更新到 cocoapods 0.32.1 后无法运行 sudo pod install,错误为 "You cannot run CocoaPods as root. (CLAide::Help)"

我在更新到最新版本0.32.1后运行sudopodinstall命令时发现了一个问题。早些时候它工作得很好。当我尝试使用旧的cocoapods安装pod时,它要求我更新到最新的cocoapods版本,即0.32.1。在我通过cocoapodsgem更新后,我无法在我的Xcode项目中执行sudopodinstall。它给了我以下错误。±sudopodinstallruby-1.9.3-p0Password:/Users/username/.rvm/rubies/ruby-1.9.3-p0/lib/ruby/gems/1.9.1/gems/claide-0.5.0/lib/claide/

ruby-on-rails - 出现错误 - 类型 "json"不存在 - 在 rake db 迁移期间在 Postgresql 中

我最近将一个项目克隆到我的本地Ubuntu机器上,因为我在远程,并且在rakedbmigrate时,我收到以下错误:PG::UndefinedObject:ERROR:type"json"doesnotexist我的表中的几列是:add_column:table,:column,:json此迁移适用于工作中的Mac,但不适用于此处。我已尝试升级到PostgreSQL9.3.4,但问题仍然存在。我也尝试了sudoapt-getupgradepostgresql,但问题仍然存在。Ruby版本为2.1.0Rails版本是4.0.3 最佳答案

ruby-on-rails - Rails 初始化校验和错误

我正在尝试在Windows上初始化一个新的Rails应用程序,并运行railsnew生成所有内容直到vendor/assets/stylesheets/.keep,但是当bundleinstall运行时,rails会生成此错误:Checksumof/versionsdoesnotmatchthechecksumprovidedbyserver!Somethingiswrong.我不确定是什么原因造成的,因为我没有对Rails本身做任何事情。感谢您的帮助。编辑:如果是Windows挑剔导致的错误,我可以选择迁移到Linux,但我想先知道哪里出了问题。 最佳答案

ruby - 通过 Ruby 拆分字符串以获取所有子字符串的最佳方法是什么?

比如单词“stack”,我想得到一个像这样的数组:['s','st','sta',...'stack','t','ta',...,'c','ck','k']我是通过这样的代码做到的:defsplit_word(str)result=[]chas=str.split("")len=chas.size(0..len-1).eachdo|i|(i..len-1).eachdo|j|result.push(chas[i..j].join)endendresult.uniqend有没有更好、更干净的方法来做到这一点?谢谢。 最佳答案 defs

ruby-on-rails - 使用 get 和 delete 运行 Rspec 测试时获取错误数量的参数(2 个为 0)

这应该是一个简单的问题,就是找不到导致测试失败的原因。运行rspec时,我不断收到以下错误。但是在评论“发送”方法之后,一切正常。1)MessagesGET/messagesworks!(nowwritesomerealspecs)Failure/Error:gettarget_app_messages_path(@message.target_app.id)ArgumentError:wrongnumberofarguments(2for0)#./app/controllers/messages_controller.rb:37:in`send'路线.rbresources:targ

ruby-on-rails - 使用 gem 添加辅助方法

我找到了很多关于添加表单辅助方法的信息(参见我的其他问题之一),但是我找不到任何关于添加辅助方法的信息,就好像它们是在application_helper.rb中定义的一样>.我试过将Rails应用程序中的application_helper.rb复制到gem中,但这没有用。我也试过:classActionView::Helpers..但这会产生错误。 最佳答案 在某处为您的辅助方法创建一个模块:moduleMyHelperdefmymethodendend将其混合到ActionView::Base中(例如在init.rb或lib/

ruby-on-rails - 测试 'create' Controller 操作的正确方法是什么?

我正在使用RubyonRails3.2.2、Rspec2.9.0和RspecRails2.9.0。我想测试createController操作,但我不知道如何使其成为“正确”/“正确”的方式。我“搭建”了模型、Controller、View……文件,因此在这些文件中我拥有由RubyonRails生成器生成的通用代码;在我的规范文件中,我有:it"assigns@article"donew_article=FactoryGirl.build(:article)Article.should_receive(:new).and_return(new_article)post:createas

ruby-on-rails - 参数错误 : wrong number of arguments (1 for 2)

我是Rails、MVC和CRUD的新手,我正在尝试使用更新方法来更改帖子的投票数量。我的PostsController更新方法中有以下代码:defupdate@post=Post.find(params[:id])ifparams[:vote]=='up'@post.update_column(:ups=>@post[:ups]+1)elsifparams[:vote]=='down'@post.update_column(:downs=>@post[:downs]+1)endflash[:notice]="Thanksforvoting!Thishelpsusdetermineimp